//////////////////////////////
//	File:		ShopState.h
//	Class:		SGP
//	Updated:	3/6/2012
//	Author:		Roc Myers
//////////////////////////////
#pragma once

#include "GameState.h"
#include "BitmapFont.h"
#include "Item.h"
#include <vector>
#include "BaseCharacter.h"

class ShopState : public GameState
{
private:
	// SINGLETON Stuff
	ShopState(void);
	ShopState(const ShopState&);
	ShopState& operator=(const ShopState&);
	~ShopState(void);

	// Class Variables
	int		Selection;
	float	sfxVol;
	float	bgmVol;
	float	pan;
	int		Gold;
	

	// Character stuff
	vector<BaseCharacter*> Characters;
	vector<Item*> Inventory;
	int HPotions;
	int MPotions;
	int Inhalers;


	// Asset IDs
	int	BGMID;
	int CursorID;
	int FontID;

	// Bitmap Font
	CBitmapFont Font;

	// SINGLETON
	static ShopState* pInstance;

	void SaveInventory(const char* szFileName);
	void LoadFile(int FileNumber);

public:
	static ShopState* GetInstance(void);
	void DeleteInstance();

	void ItemPurchased(Item* i);

	// Inherited Functionality
	void Enter(void);	
	bool Input(void);	
	void Update(float fElapsedTime);	
	void Render(void);	
	void Exit(void);
};

